const { DataTypes } = require('sequelize');
const seq = require('../db/seq');

const Book = seq.define('books', {
  id: {
    type: DataTypes.INTEGER,
    autoIncrement: true,
    primaryKey: true,
  },
  title: {
    type: DataTypes.STRING,
    allowNull: false, // title 不能为空
  },
  author: {
    type: DataTypes.STRING,
    allowNull: true, // author 可以为空
  },
  publisher: {
    type: DataTypes.STRING,
    allowNull: true, // publisher 可以为空
  },
  category: {
    type: DataTypes.STRING,
    allowNull: true, // category 可以为空
  },
  tags: {
    type: DataTypes.STRING,
    allowNull: true, // tags 可以为空
  },
  description: {
    type: DataTypes.TEXT,
    allowNull: true, // description 可以为空
  },
  donor: {
    type: DataTypes.STRING,
    allowNull: true, // donor 可以为空
  },
  image_url: {
    type: DataTypes.STRING,
    allowNull: true, // image_url 可以为空
  },
  created_at: {
    type: DataTypes.DATE,
    defaultValue: seq.NOW,
  },
}, {
  timestamps: false, // 因为我们手动定义了 created_at 字段，所以需要禁用 timestamps
});

module.exports = Book;